package org.demo.base.file.service;

import org.demo.base.file.domain.SysFile;
import org.demo.base.file.enums.FileType;
import org.springframework.web.multipart.MultipartFile;

import java.io.FileInputStream;

/**
 * @author tomdog
 */
public interface FileService {

    /**
     * 上传文件
     */
    public SysFile upload(MultipartFile file, String category);

    /**
     * 路径下载文件
     */
    public FileInputStream download(String path);

    /**
     * 根据文件id来查询文件信息
     */
    public SysFile getFileInfoById(Long id);

    /**
     * 根据文件名识别文件类型
     * @param fileName
     * @return
     */
    public FileType readFileType(String fileName);

    /**
     * 识别文件的名字
     * @param path
     * @return
     */
    String readFileName(String path);
}
